-
Notifications
You must be signed in to change notification settings - Fork 27
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Shadow container #638
Shadow container #638
Conversation
967585f
to
e8b2d35
Compare
The branch has been rebased from main, I'm getting some restore failures. |
e703a9c
to
18441fc
Compare
Azure Static Web Apps: Your stage site is ready! Visit it here: https://polite-field-01aa64f0f-638.eastus2.azurestaticapps.net |
The sample app is now available (#638 (comment)), and below is the webassembly render. Is the clipping of the shadow expected ? /cc @eriklimakc @roubachof |
@jeromelaban Yes, Jean-Marie has mentioned the clipping on Android and Wasm, I think @carldebilly was the one looking into it. |
Azure Static Web Apps: Your stage site is ready! Visit it here: https://polite-field-01aa64f0f-638.eastus2.azurestaticapps.net |
samples/Uno.Toolkit.Samples/Uno.Toolkit.Samples.Shared/App.xaml.cs
Outdated
Show resolved
Hide resolved
src/Uno.Toolkit.UI/Controls/Shadows/ShadowContainer.Properties.cs
Outdated
Show resolved
Hide resolved
} | ||
} | ||
|
||
private readonly ConcurrentDictionary<string, CacheBucket> _shadowsCache = new ConcurrentDictionary<string, CacheBucket>(); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
i felt like when the shadows are being modified, the old cache arent being removed properly..?
|
||
public void AddOrUpdate(string key, SKImage image) | ||
{ | ||
System.Diagnostics.Debug.WriteLine($"[ShadowsCache] AddOrUpdate => key: {key}"); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
should be remove
if (!_shadowPropertyChanged) | ||
{ | ||
// If a property has changed dynamically, we don't want to cache the updated shadows | ||
Cache.AddOrUpdate(shadowsKey, surface.Snapshot()); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
the instance of surface.Snapshot() dont need any lifetime management?
Azure Static Web Apps: Your stage site is ready! Visit it here: https://polite-field-01aa64f0f-638.eastus2.azurestaticapps.net |
About the WASM clipping, on SkiaSharp 2.88.4-preview.84 we get a better result: |
samples/Uno.Toolkit.Samples/Uno.Toolkit.Samples.Shared/Converters/HexToColorConverter.cs
Show resolved
Hide resolved
Azure Static Web Apps: Your stage site is ready! Visit it here: https://polite-field-01aa64f0f-638.eastus2.azurestaticapps.net |
return needsPaint; | ||
} | ||
|
||
#if false // ANDROID (see comment in ShadowContainer.cs) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do we need to keep this?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I created this issue about that: #694
src/Uno.Toolkit.UI/Controls/Shadows/ShadowContainer.Properties.cs
Outdated
Show resolved
Hide resolved
Android and iOS control overlap issue: #679 |
@kazo0 There is no implementation of neumorphism for visual states. This is just applied on the control itself. |
Azure Static Web Apps: Your stage site is ready! Visit it here: https://polite-field-01aa64f0f-638.eastus2.azurestaticapps.net |
dfa25df
to
d8d9b93
Compare
Azure Static Web Apps: Your stage site is ready! Visit it here: https://polite-field-01aa64f0f-638.eastus2.azurestaticapps.net |
1905ed3
to
562455b
Compare
562455b
to
ee5bf38
Compare
Azure Static Web Apps: Your stage site is ready! Visit it here: https://polite-field-01aa64f0f-638.eastus2.azurestaticapps.net |
Azure Static Web Apps: Your stage site is ready! Visit it here: https://polite-field-01aa64f0f-638.eastus2.azurestaticapps.net |
Azure Static Web Apps: Your stage site is ready! Visit it here: https://polite-field-01aa64f0f-638.eastus2.azurestaticapps.net |
@eriklimakc if you can help to work on the unresolved comments we left open on another PR, please |
(cc @jeromelaban) |
https://github.com/Mergifyio backport legacy/3x
|
✅ Backports have been created
|
Co-authored-by: roubachof <[email protected]> Co-authored-by: xiaoy312 <[email protected]> Co-authored-by: Jérôme Laban <[email protected]> Co-authored-by: Steve Bilogan <[email protected]> (cherry picked from commit 97bc94f) # Conflicts: # build/workflow/templates/dotnet-workload-install-mac.yml # build/workflow/templates/dotnet-workload-install-windows.yml # samples/Directory.Packages.props # samples/Uno.Toolkit.WinUI.Samples/Uno.Toolkit.WinUI.Samples.Mobile/Uno.Toolkit.WinUI.Samples.Mobile.csproj # src/Uno.Toolkit.sln
Co-authored-by: roubachof <[email protected]> Co-authored-by: xiaoy312 <[email protected]> Co-authored-by: Jérôme Laban <[email protected]> Co-authored-by: Steve Bilogan <[email protected]> (cherry picked from commit 97bc94f)
Co-authored-by: roubachof <[email protected]> Co-authored-by: xiaoy312 <[email protected]> Co-authored-by: Jérôme Laban <[email protected]> Co-authored-by: Steve Bilogan <[email protected]> (cherry picked from commit 97bc94f)
Co-authored-by: roubachof <[email protected]> Co-authored-by: xiaoy312 <[email protected]> Co-authored-by: Jérôme Laban <[email protected]> Co-authored-by: Steve Bilogan <[email protected]> (cherry picked from commit 97bc94f)
Co-authored-by: roubachof <[email protected]> Co-authored-by: xiaoy312 <[email protected]> Co-authored-by: Jérôme Laban <[email protected]> Co-authored-by: Steve Bilogan <[email protected]> Co-authored-by: Érik Lima <[email protected]> Co-authored-by: eriklimakc <[email protected]> Co-authored-by: Pedro Jesus <[email protected]>
GitHub Issue (If applicable): #
PR Type
What kind of change does this PR introduce?
What is the current behavior?
What is the new behavior?
PR Checklist
Please check if your PR fulfills the following requirements:
Other information
Internal Issue (If applicable):